1. Technical Field
The present invention relates to a method and mechanism for generating control instructions to display documents, etc. in a form adapted to a terminal used by a user and a mechanism, more particularly to a method and mechanism for outputting HTML (Hyper Text Markup Language) documents, etc. in a form adapted to various attributes such as the sizes of display screens and/or communication speeds, of various terminals used by a user, such as PDA (Personal Digital Assistance), a personal computer (PC), TV set or a cellular phone having an information display function.
Moreover, the present invention relates to a facility, in conjunction with the facility for dynamically generating a page, for controlling in detail authentication and reexecution considering a history mechanism of a terminal.
The present invention relates particularly to a facility wherein, in a transaction such as updating a database or displaying a page for which strict user authentication is necessary, a process such as suppression of reexecution or reauthentication can readily be specified and operates from an application even if a page is dynamically generated.
2. Prior Art
As Web-based technology becomes popular, so-called thin client types of systems which use a Web browser for user interface and execute an application program at a Web server (application server) are increasingly used. In such cases, information sent from a server to a client is an HTML document including a form, and only if the Web browser operates at the client's terminal, an application can be run without being distributed or installed to each client beforehand. Also, in general, the client side can be operated by using hardware of lower throughput compared to a case where an application runs on the client side.
Conventionally, a low-end PC has been used for such a client terminal. Recently, however, Web browsers have come to operate on hardware of even lower throughput and low cost, such as PDAs, handheld PCs, set-top boxes and car navigation systems, etc, and new terminal equipment such as a cellular phone with a Web browser feature has been developed. Therefore, significant low usability has arisen, for instance, that a Web page well displayed on a PC with a large display area requires frequent scrolling operations on a PDA with a small display area.
There is a method to cope with this problem, described in Japanese Published Unexamined Patent Application No. Hei 10-133973, namely to provide, in advance, multiple HTML documents and other accompanying resources corresponding to all possible types of client terminals and return appropriate ones for each request from a client by determining the type of its terminal. In this case, however, there is a demerit that massive data needs to be created and the work load of system development becomes enormous. The work load for a new type of client terminal is also huge.
There is also another method proposed, which is namely, to provide only standard HTML documents for PCs and modify their contents according to capability of the client terminal. It is, for instance, in case of a terminal with a small display area, to create reduced images and send to the client an HTML document which is modified so as to refer to the reduced images. The aforementioned Japanese Published Unexamined Patent Application No. Hei 10-133973 also mentioned that an HTML document is transformed so as to adapt it for multiple terminals. However, no mention is made as to a concrete method of such transformation.
In addition, Japanese Published Unexamined Patent Application No. Hei 10-21165 discloses a communication system which transfers hyper-texts obtained from a server after editing them to fit their data size and data layout into physical environment and user life scenes of the client receiving them. This physical environment includes the type of communication lines, the performance of terminals such as being a workstation or a cellular phone, number of colors and sizes of displayable images, etc. The user life scenes include the data such as a user is on the way to the office, traveling on business, sitting on the desk, taking holidays, etc. This application discloses that physical environment and user life scenes are used for selecting transferred information, but it does not disclose anything particular as to screen configuration.
In addition, T. W. Bickmore et al, “Digestor: Device-Independent Access To The World Wide Web”, (http://www.fxpal.xerox.com/papers/bic97) described a method that, when a proxy receives a request for an HTML document, it creates a new HTML document by fetching the document from a specified HTTP (Hyper Text Transport Protocol) server, parsing the HTML document into an AST (Abstract Syntax Tree) and performing predetermined transforming operations on the AST. In Digestor, an HTTP server must first creates an HTML document which is accordingly required when creating an AST. Also, as a transformed AST itself is converted into an HTML document, the AST itself does not perform control when creating an HTML document.
Or it is possible, as to reexecution of a page, to add identification information or a state of a session to a URL or HTTP header information (so-called Cookies) (for instance, see a Servlet function (SUN, Java Servlet API Specification Ver. 2.1), Session Tracking of IBM WebSphere, etc.). However, they only identify and restore a state and do not include control on reexecution of a page which is an object of the present invention.
With regard to control on reexecution of a page in transaction processing of a database, a technique of numbering URLs so as to inhibit reexecution of a page once displayed is widely known (for instance, it is introduced as “once-only” URL in 13.13 History Lists of RFC2068 HTTP 1.1 Specification).
However, if an authentication state or control on reexecution is to be dynamically changed by processing of an application or diversity of a terminal, programming becomes complicated (it may happen that flexible processing is impossible only with basic functions, and all of originally reexecutable portions cannot be reexecuted).
In addition, since pages are not organized, specification of a page in such a processing program becomes so complicated that necessity for total modification arises in the case of addition or deletion of a page, and thus productivity/maintainability and reliability of software are lowered. In case of a system which automatically divides a page by a terminal, it is difficult to control it in such a method.
An object of the present invention is to dynamically generate documents or display control information for providing client terminals of various capabilities with user interfaces in accordance with each client terminal's capabilities.
It is also an object of the present invention to provide a mechanism for making applications running on a server independent of any client terminal which uses the results of their processing.
In addition, it is also an object of the present invention to separate processing of applications running on a server and creation of a document showing the results of the processing so that only the part for the document creation needs to be changed even when various new client terminals emerge.
A still further object of the present invention is to furnish, for an operation and a request onto a past page by using a history mechanism of a terminal, a mechanism for controlling its reexecution and/or reauthentication and a mechanism for readily controlling it an application program.
Moreover, a still further object is to keep this mechanism for controlling operable according to a terminal or even when a page is dynamically generated by an application.
In addition, a still further object is, from an application program, to eliminate any effect of dynamic generation of a page or an application so that it may become possible to readily specify the control.